<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="./js/vue.js"></script>
    <style>
        .basic {
            color : red;
        }

        .happy {
            background-color: yellowgreen;
        }
        .sad {
            background-color: green;
        }
        .normal {
            background-color: blue;
        }

        .y1 {
            border: 1px solid red;
            border-radius: 10%;

        }
        .y2 {
            border: 1px solid red;
            border-radius: 30%;
        }
        .y3 {
            border: 1px solid red;
            border-radius: 60%;
        }
    </style>
</head>
<body>
    <div id="root">
        <!-- 绑定class样式，使用v-bind:class="xxx",xxx可以是字符串属性、对象、数组 -->
        <!-- 字符串写法:适用于样式的类名不确定，需要动态指定 -->
        <div class="basic" :class="mood" @click="changeMood">hello1</div>
        <div class="basic" :class="['normal']" @click="changeMood">hello1</div>

        <!-- 数组写法:适用于要绑定的样式个数和名字不确定 -->
        <div class="basic" :class="classArr" >hello2</div>

        <!-- 对象写法：适用于样式的个数和名字确定，但是是否使用不确定 -->
        <div class="basic" :class="classObj" >hello3</div>

        <!-- 操作内联样式：使用:style -->
        <div class="basic" :style="styleObj" >hello4</div>
    </div>

    <script>
        Vue.config.productionTip = false;

        new Vue({
            el: "#root",
            data: {
                mood : "normal",
                classArr : ["y1","y2","y3"],
                classObj : {
                    // false表示不使用该属性，true表示使用该属性
                    y1 : true,
                    y2 : false,
                    y3 : false,
                },
                styleObj : {
                    // 使用js驼峰命名法
                    color : "blue",
                    fontSize : "40px"
                }

            },
            methods: {
                changeMood() {
                    const arr = ['happy','sad','normal'];
                    const index = Math.floor(Math.random()*3);  // 拿到0，1，2三个索引
                    this.mood = arr[index];
                }  
            }
        })
    </script>
</body>
</html>